Currently, a file transfer between two terminal devices, for example, between PDAs (PDA: Personal Digital Assistant), between PCs (PC: Personal Computer) or between PDA and PC, requires a certain amount of overhead. Computers are to be understood generally as also meaning mobile terminals of communications technology such as, for example, cell phones or mobile telephones.
A great deal of software must be installed in the computers in order to perform a file transfer of this kind or a general object transfer. After this, it is only possible to perform the file transfer between these two terminal devices. At the same time, the user must understand the technology via which he or she wishes to perform the transfer. This means the user has to start a Bluetooth manager if he or she wants to transfer the file via Bluetooth. Specifically, he or she must select the file to be transferred in this manager and determine the destination. It may also be necessary to select a specific conversion format. An analogous procedure applies to cable-connected and infrared transmission. On the other hand, techniques and methods are known for connecting two or more screen to form a large-area display as well as for coupling the input means, such as, for example, mouse and keyboard.
There are many different reasons for using a spontaneous screen assembly or a spontaneous combination or joining together of display devices (ad hoc collaboration display). A screen assembly is to be understood as meaning, for example, the combining of a plurality of screens to create what is referred to as a large-area display. Furthermore the linking of displays, as a standalone device or integrated in a data processing system, is also to be generally understood as such. The following statements concentrate on the graphical control of screens or displays, basically involving the drawing of objects on a display. Apart from said control of screens, the techniques used for this also include the control of input means such as, for example, keyboards, mice and the like. All these means for user interface for an electronic data processing device as well as for a stationary or mobile communication terminal are integrated in the same processing layer in virtually all operating systems.
The starting point is, for example, the display of a mobile telephone or of a PDA (Personal Digital Assistant). Thus, for example, a group of people referred to as an ad hoc community wish to view a document together in a collective environment or even work collaboratively in the document. A document, in this context, is to be understood as meaning any representation of a file. Other persons with, for example, mobile phones wish to process their data on a shared large-area display skipping the synchronization step.
In a domestic setting, the occupants want to be able to view all the content or status of the devices and appliances contained in the home on a central display. The content includes, for example, incoming SMS messages to the cordless or corded telephones or the messages from a running washing machine or dishwasher, which are displayed on the screen of a television set. Furthermore, devices without their own display can be controlled via a mobile phone's display brought along, as it were, by the user. The following techniques are known for controlling display devices or displays.
The typical method of an operating system OS controlling a screen SCR or display device is described with reference to FIG. 1. A computer or PDA normally has a single display. The operating system OS accesses an object library WSL (WidgetSet Library). In addition to the operating system OS, as the standard application, as it were, the applications APP installed in the computer generally make use of the object library WSL. Based on the addressing carried out by the applications APP, the object library WSL generates the desired objects, which is to say it draws the objects and passes these on to the screen driver SDD (Screen Device Driver). In addition to icons and other symbols, graphic characters and other displayable characters should also be understood to mean objects or interaction objects. The screen driver SDD edits the objects for the graphics card GC, which then controls the screen SCR directly and displays the objects thereon. However, it is not possible to change the screen size.
FIG. 2 illustrates a modem operating system OS, such as, for example, Win2000, WinXP, Linux-X11R6-Xfree86 and others. An operating system OS of this kind can control multiple screens SCR (known as Xinerama feature in Xfree86). For this purpose, the operating systems OS generally use a virtual layer, known as a virtual screen driver VSDD. The virtual screen driver VSDD is inserted between the object library WSL and the screen driver or screen drivers SDD. The virtual screen driver VSDD operates as a front-end connecting element for two, as shown in the figure, or more screen drivers SDD for the simultaneous control of the same number of displays SCR.
The virtual screen driver VSDD imitates or, more precisely, simulates a single screen SCR for the object library WSL. Although the single screen has twice the height or twice the width of a single one of these screens SCR. Height or width are in this case dependent on the settings selected by the user. The same applies analogously to more than two screens SCR. The virtual screen driver VSDD handles the task of passing the objects output by the object library WSL via the associated screen driver SDD to the corresponding graphics card SC, and thus enables the objects to be displayed at the correct position on one of the screens SCR. The representation is completely transparent to the application APP and can be moved freely over the two screens SCR and stretched and extended over both screens SCR. The virtual screen driver VSDD handles the two screens SCR as a single, physically present screen SCR with twice the size. In this case, only individual screens SCR can be joined together to form a large-area image, the screens being controlled from one and the same platform.
FIG. 3 shows a variant in which the computer and the display device SCR are no longer at the same location, but are connected to each other via what is known as a client/server application. An X client XC, for example an X11R6 client, is disposed in the local computer and receives the corresponding data records from the applications APP or, as the case may be, the operating system OS. The computer, more particularly the X client XC, is connected to an X server XS via a network NL (Network Layer). The network layer NL can be implemented by way of a wired or wireless communication network or a computer connection network. The data communication via the network layer NL takes place on the basis of a correspondingly embodied protocol, which does not need to be dealt with in further detail here.
This configuration largely corresponds to the configuration shown in FIG. 1, with the client/server application, consisting of the X client XC, the network layer NL and the X server XS, being disposed between the applications APP, the operating system OS and the following object library WSL. The object library WSL with the front-end X server XS, the screen driver SDD or, as the case may be, the virtual screen driver VSDD, and the graphics card SC as well as the screen SCR are embodied as a further computer or as a remotely located computing system. In a variant hereto the screen driver SDD is replaced by the virtual screen driver VSDD already described in the foregoing with reference to FIG. 2. This variant enables a plurality of screens SCR to be controlled. (This scenario is not depicted in any greater detail in the figure). This variant is a hybrid solution in which the local screen controller is replaced by a screen controller controlled via the network. This is, as it were, a remote screen controller.
FIG. 4 shows what is referred to as a display controlled over the network. In this arrangement there is, on one hand, a client computer CC having an application APP and an operating system OS, an object library WSL, a screen driver SDD or virtual screen driver VSDD, a graphics card GC and a screen SCR. Disposed on the other side is a computer CTC (Computer To be Controlled) that is to be controlled or remotely controlled and which has the same units. The two computers CC and CTC are connected via what is called a virtual network computer (VNC). This network may in principle be the WWW (World Wide Web). The virtual network computer VNC is in the proper sense a protocol which accepts the input and output data, converts it into, for example, a serial form and sends it to a client application running somewhere in the network.
For the purposes of data exchange or data transfer the client computer CC has a VNC client VNC-C, which is connected to a data or communication network via the network layer NL already known from FIG. 3. The VNC client VNC-C is integrated into the computer CC analogously to an application APP. For the purpose of handling the data traffic, the computer to be controlled CTC has what is referred to as a VNC spy VNC-S that is likewise connected to the network layer NL. The VNC spy VNC-S is, for example, directly connected to the (virtual) screen driver (V) SDD in the computer CTC.
This arrangement enables the client application to take full control of the computer to be controlled CTC. In this case, the user works on the client computer CC in the same way as if he or she were sitting in front of the screen SCR of the computer to be controlled CTC. When the virtual network computer VNC is used, the data exchange can be interrupted and resumed from a different location, with the display settings, such as number and arrangement of the windows in windows, the position of the mouse pointer, etc., being preserved as they were prior to the interruption. Microsoft uses a similar configuration to this under the name “pcAnywhere.” With combined screens, objects or files can be moved over the entire virtual screen. The associated application or, as the case may be, the file processing function runs on the control computer.
Therefore, the invention addresses the need in the art for a more convenient and user-friendly way of transferring objects between computers.